1. Field of the Invention
The present invention relates to call distribution in a communications network, and in particular to a system designed to support telemarketing.
2. Description of the Related Art
Telemarketing services involve, for example, a retailer operating a call answering centre in which a number of call answering agents take calls from customers. Large call answering centres may be split over several sites and may employ some hundreds of call answering agents. Typically, customers dial a single number, which may be an 0800 number, and each call is automatically directed within the network to an appropriate one of the sites, and subsequently to one of the call answering agents within the site. The system which is responsible for distributing the calls between different sites may use a call plan. This comprises a decision tree which is pre-programmed with criteria to be used in selecting a destination. For example, one criterion might be the time of day at which the call is made, with out-of-hours calls all being directed to one particular site. Another important criterion is the ratio of calls directed to different sites. Call plans may include proportional call distribution (PCD) nodes arranged to distribute calls in a given ratio. In order to ensure the most effective use of the available call answering agents, the telemarketing operator may require the network to distribute calls between sites in a specific ratio which is chosen to match the capacity of sites. For example, where the telemarketing operation is split between three sites with 30, 40 and 50 agents respectively, then the network will be required to distribute calls between the sites in the ratio 3:4:5. It is important that this call ratio should be maintained as accurately as possibly to ensure good occupancy at the call answering centres.
According to a first aspect of the present invention, there is provided a call distribution system suitable for use in a communications network, comprising:
a) a data server including
a global call counter which is incremented in response to the arrival of successive calls;
b) a plurality of call transaction processors connected in common to the data server, each call transaction processor including
a local call counter, and
a call distribution map which is addressed using a call counter value to determine a call destination;
c) a controller which is responsive to the traffic rate and which determines, in dependence upon the traffic rate, whether a routing decision for a new call is made using the global call counter at the data server or is made using a local call counter.
This first aspect of the invention provides a platform which is able to implement a proportional call distribution (PCD) plan efficiently and accurately under widely varying traffic conditions. The platform combines distributed call processing by a number of call transaction processors with the use of a global data server which maintains a count of calls received for a given node across all the transaction processors in the platform. At low call rates, the routing decision for each new call is made by using the value of the global counter to address a distribution map. At higher call rates a local counter is used. This provides a high degree of control over call distribution, without the imposition of a bottleneck which might limit the capacity of the system.
Preferably when a routing decision is made using the global counter, an updated value of the global counter is returned from the data server to a call transaction processor, and a call destination is determined by addressing using the updated value of the global counter the distribution map located at the transaction processor.
In the preferred implementation of the invention, distribution maps are held only in the transaction processors, and all the distribution maps for a given PCD node are identical (that is to say, they are calculated from the same data). Although alternatively a distribution map may be located in the data server, and return destination number from data server to transaction processor, this requires communication of PCD node distribution fractions onto the data server. If the data server returns a simple count to the transaction processor, there is then no need for node distribution fractions to be held by the data server.
The distribution map may be a one-dimensional array listing different call destinations. The destinations are then allocated to incoming calls in the sequence determined by their order in the array. However, while the use of a global counter makes it possible to maintain the desired call distribution ratios with great accuracy, it also represents a potential bottleneck which might limit the ability of the platform to handle high call rates. The invention overcomes this potential limitation by providing each transaction server with an associated call rate detection mechanism. This may use, for example, a leaky bucket algorithm. Then once the call rate reaches a certain threshold, some call are withheld from the global counter, and instead are used to increment local counters in each of the transaction processors. It is then the local counter value which is used to address a local distribution map in the transaction processor in order to make a routing decision for a call.
Preferably each controller is programmed with a different respective call rate threshold.
The inventors have found that the performance of the platform can be significantly enhanced by using different call rate thresholds to determine the level at which the transaction processors begin to make use of local counters. The use of different thresholds for the onset of local processing eliminates the possibility of the local counters for a given PCD node, in the different local transaction processors, operating coherently. It is desirable to eliminate coherence as far as possible, since it tends otherwise to produce bursts of traffic at some destinations.
According to a second aspect of the present invention, there is provided a call distribution system suitable for use in a communications network, the system comprising
a call counter which is incremented in response to the arrival of successive calls;
a distribution map comprising a list of call destination identities, each identity occurring in the said distribution map with a frequency corresponding to a predetermined ratio of calls selected for the corresponding destination;
a call routing processor which is arranged to address the distribution map in dependence upon a current value in the call counter and to assign a call destination to an incoming call accordingly.
Preferably the distribution map is a minimum error map in which the sequence of the destination identities in the map is such that if a call sequence is terminated at any point in the map the deviation of the proportion of call directed to different destinations from a predetermined target ratio is minimised. It is found that the use of a minimum error distribution map reduces the bunching of calls to particular destinations, and further improves the call statistics.
According to a second aspect of the present invention, there is provided a method of distributing calls in a communications system comprising;
a) maintaining a global count of the calls for a respective call distribution node;
b) maintaining locally at a call transaction processor a local count of the calls for the respective call distribution node processed by the said call transaction processor;
c) selecting either a value of the global count or a value of the local count depending on call traffic levels;
d) addressing a call distribution map using the value selected in step(c) and determining thereby the destination to which a call is directed.
In a typical implementation of the invention, there are a plurality of transaction processors, and a different number of PCD nodes. There may be several PCD nodes per call plan, many call plans per customer, and many customers handled by a single call distribution system. Each active PCD node has a global counter at the global data server (GDS) and a local counter at each of the plurality of transaction processors. One or other of the global and local counters is used to address the distribution map for a given PCD node.
The present invention also encompasses a communications network including a call distribution system in accordance with any of the preceding aspects of the invention.